Top-down Synthesis of Recursive Logic Procedures from First-order Logic Specifications
نویسندگان
چکیده
Derivation of logic programs from rst-order logic speciications is nontrivial and tends to be done by hand. We describe a method for synthesising recursive logic procedures from their rst-order logic speciications that is amenable to mechanisation. The method is strictly top-down and has been implemented as part of a user-guided synthesis system in Prolog.
منابع مشابه
Synthesis of a Family of RecursiveSorting
In an earlier paper, we described a method for synthesising recursive logic procedures from their rst-order logic speciications. The method is practical because it is strictly top-down and has been implemented as part of a user-guided synthesis system in Prolog. We have used the system to synthe-sise procedures for a wide variety of algorithms, including a large family of recursive sorting proc...
متن کاملAlternating Regular Tree Grammars in the Framework of Lattice-Valued Logic
In this paper, two different ways of introducing alternation for lattice-valued (referred to as {L}valued) regular tree grammars and {L}valued top-down tree automata are compared. One is the way which defines the alternating regular tree grammar, i.e., alternation is governed by the non-terminals of the grammar and the other is the way which combines state with alternation. The first way is ta...
متن کاملInductive Synthesis of Recursive Logic Programs: Achievements and Prospects
The inductive synthesis of recursive logic programs from incomplete information, such as input/output examples, is a challenging subfield both of ILP (Inductive Logic Programming) and of the synthesis (in general) of logic programs from formal specifications. We first overview past and present achievements, focusing on the techniques that were designed specifically for the inductive synthesis o...
متن کاملModular and Efficient Top-Down Parsing for Ambiguous Left-Recursive Grammars
In functional and logic programming, parsers can be built as modular executable specifications of grammars, using parser combinators and definite clause grammars respectively. These techniques are based on top-down backtracking search. Commonly used implementations are inefficient for ambiguous languages, cannot accommodate left-recursive grammars, and require exponential space to represent par...
متن کاملDeveloping Logic Programs from Specifications Using Stepwise Refinement
In this paper we demonstrate a refinement calculus for logic programs, which is a framework for developing logic programs from specifications. The paper is written in a tutorial-style, using a running example to illustrate how the refinement calculus is used to develop logic programs. The paper also presents an overview of some of the advanced features of the calculus, including the introductio...
متن کامل